package contato.DAO;

import java.util.ArrayList;

import javax.faces.bean.ViewScoped;
import javax.persistence.EntityManager;
import javax.persistence.Query;

import rta.dataacess.Imei;
import rta.dataacess.Usuario;


public class ImeiDao extends GenericDAO<Imei> {

	public ImeiDao() {
		super(Imei.class);

	}

	public ImeiDao(EntityManager entityManager) {
		super(Imei.class, entityManager);
	}

	public ArrayList<Imei> findUsuario(Usuario usuario) {
		
		ArrayList<Imei> imeis;
		String hql = "FROM Imei WHERE usuario = ?";

		EntityManager entityManager = getEntityManager();
		Query query = entityManager.createQuery(hql);

		query.setParameter(1, usuario);

		try {
			imeis = (ArrayList<Imei>)  query.getResultList();

			return imeis;

		} catch (RuntimeException e) {

			return imeis = null;

		}
	}
	
	
public Imei findPlaca(String placa) {
		
		Imei imeis=null;
	
		String hql = "FROM Imei WHERE placa = ?";

		EntityManager entityManager = getEntityManager();
		Query query = entityManager.createQuery(hql);

		query.setParameter(1, placa);
		

		try {
			imeis =  (Imei) query.getSingleResult();
			System.out.println("RETORNANDO IMEI:"+imeis.getImei());
			return imeis;

		} catch (RuntimeException e) {
			System.out.println(e);
			return imeis;

		}
	}

public Imei findPlaca2(String placa, Usuario usuarioImei) {
	
	Imei imeis=null;
	String hql = "FROM Imei WHERE placa = ? AND usuario = ?";

	EntityManager entityManager = getEntityManager();
	Query query = entityManager.createQuery(hql);

	query.setParameter(1, placa);
	query.setParameter(2, usuarioImei);

	try {
		imeis =  (Imei) query.getSingleResult();
		return imeis;

	} catch (RuntimeException e) {
		System.out.println(e);
		return imeis;

	}
}



}
